﻿using LinkyPOS.Class;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace LinkyPOS
{
    public partial class Siparisler : Form
    {
        public Siparisler()
        {
            InitializeComponent();
        }
        linkDataContext ly = new linkDataContext();
        siparisler2 s = new siparisler2();
        private void radioButton1_CheckedChanged(object sender, EventArgs e)
        {

            monthCalendar1.Visible = false;
            monthCalendar2.Visible = false;
        }

        private void radioButton3_CheckedChanged(object sender, EventArgs e)
        {

            monthCalendar1.Visible = true;
            monthCalendar2.Visible = false;
        }

        private void radioButton2_CheckedChanged(object sender, EventArgs e)
        {

            monthCalendar1.Visible = true;
            monthCalendar2.Visible = true;
        }

        private void button1_Click(object sender, EventArgs e)
        {
            lstSiparisler.Items.Clear();
            // seçimin ne olduğunun tespiti yapılacak

            if (radioButton1.Checked)
            {// toplam
                try
                {

                    /*
                     
                     
                           s.sipariskodu = item.sip.sipariskodu;
                s.musteri_bilgileri = item.m.isim + " " + item.m.soyisim + " " + item.m.telefon;
                s.net = Convert.ToDouble(item.sip.net);
                s.toplambrut = Convert.ToDouble(item.sip.toplambrut);
                s.iskonto = Convert.ToDouble(item.sip.iskonto);
                s.alimtarihi = Convert.ToDateTime(item.sip.alimtarihi);
                s.durum = (int)item.sip.durum;
                s.odemetarihi = Convert.ToDateTime(item.sip.odemetarihi);
                sipar2.Add(s);
                     
                     
                     */

                    List<siparisler2> krap1 = s.tumsiparisler();

                    foreach (var item in krap1)
                    {
                        ListViewItem lst = new ListViewItem();
                        lst.Text = item.Sipariskodu.ToString();
                        lst.SubItems.Add(item.Toplambrut.ToString());
                        lst.SubItems.Add(item.Iskonto.ToString());
                        lst.SubItems.Add(item.Net.ToString());
                        switch (item.Durum)
                        {
                            case 2:
                                lst.SubItems.Add("Nakit-Rafta");
                                break;
                            case 3:
                                lst.SubItems.Add("Kredi Kartı- Rafta");
                                break;
                            case 4:
                                lst.SubItems.Add("Nakit");
                                break;
                            case 5:
                                lst.SubItems.Add("Kredi Kartı");
                                break;
                            case 6:
                                lst.SubItems.Add("Eski Nakit");
                                break;
                            case 7:
                                lst.SubItems.Add("Eski Kredi Kartı");
                                break;
                            default:
                                lst.SubItems.Add("Cari-Rafta");
                                break;
                        }
                        lst.SubItems.Add(item.Alimtarihi.ToString());
                        lst.SubItems.Add(item.Odemetarihi.ToString());
                        lst.SubItems.Add(item.musteribilgileri.ToString());


                        lstSiparisler.Items.Add(lst);

                       
                    }
                }
                catch (Exception)
                {


                }
            }
            else if (radioButton2.Checked)
            {
                try
                {
                    List<siparisler2> krap1 = s.tumsiparisler(Convert.ToDateTime(monthCalendar1.Text), Convert.ToDateTime(monthCalendar2.Text));

                    foreach (var item in krap1)
                    {
                        ListViewItem lst = new ListViewItem();
                        lst.Text = item.Sipariskodu.ToString();
                        lst.SubItems.Add(item.Toplambrut.ToString());
                        lst.SubItems.Add(item.Iskonto.ToString());
                        lst.SubItems.Add(item.Net.ToString());
                        switch (item.Durum)
                        {
                            case 2:
                                lst.SubItems.Add("Nakit-Rafta");
                                break;
                            case 3:
                                lst.SubItems.Add("Kredi Kartı- Rafta");
                                break;
                            case 4:
                                lst.SubItems.Add("Nakit");
                                break;
                            case 5:
                                lst.SubItems.Add("Kredi Kartı");
                                break;
                            case 6:
                                lst.SubItems.Add("Eski Nakit");
                                break;
                            case 7:
                                lst.SubItems.Add("Eski Kredi Kartı");
                                break;
                            default:
                                lst.SubItems.Add("Cari-Rafta");
                                break;
                        }
                        lst.SubItems.Add(item.Alimtarihi.ToString());
                        lst.SubItems.Add(item.Odemetarihi.ToString());
                        lst.SubItems.Add(item.musteribilgileri.ToString());


                        lstSiparisler.Items.Add(lst);

                    }
                }
                catch (Exception)
                {

                    MessageBox.Show("Lütfen başlangıç ve bitiş tarihlerinizi kontrol ediniz");
                }

            }
            else if (radioButton3.Checked)
            {

                try
                {


                     List<siparisler2> krap3 = s.tumsiparisler(Convert.ToDateTime(monthCalendar1.Text));

                     foreach (var item in krap3)
                     {
                         ListViewItem lst = new ListViewItem();
                         lst.Text = item.Sipariskodu.ToString();
                         lst.SubItems.Add(item.Toplambrut.ToString());
                         lst.SubItems.Add(item.Iskonto.ToString());
                         lst.SubItems.Add(item.Net.ToString());
                         switch (item.Durum)
                         {
                             case 2:
                                 lst.SubItems.Add("Nakit-Rafta");
                                 break;
                             case 3:
                                 lst.SubItems.Add("Kredi Kartı- Rafta");
                                 break;
                             case 4:
                                 lst.SubItems.Add("Nakit");
                                 break;
                             case 5:
                                 lst.SubItems.Add("Kredi Kartı");
                                 break;
                             case 6:
                                 lst.SubItems.Add("Eski Nakit");
                                 break;
                             case 7:
                                 lst.SubItems.Add("Eski Kredi Kartı");
                                 break;
                             default:
                                 lst.SubItems.Add("Cari-Rafta");
                                 break;
                         }
                         lst.SubItems.Add(item.Alimtarihi.ToString());
                         lst.SubItems.Add(item.Odemetarihi.ToString());
                         lst.SubItems.Add(item.musteribilgileri.ToString());

                         lstSiparisler.Items.Add(lst);



                     }
                }
                catch (Exception)
                {

                    MessageBox.Show("Lütfen başlangıç ve bitiş tarihlerinizi kontrol ediniz");
                }

            }


        }

        private void button2_Click(object sender, EventArgs e)
        {

            Microsoft.Office.Interop.Excel.Application xla = new Microsoft.Office.Interop.Excel.Application();
            xla.Visible = true;
            Microsoft.Office.Interop.Excel.Workbook wb = xla.Workbooks.Add(Microsoft.Office.Interop.Excel.XlSheetType.xlWorksheet);
            Microsoft.Office.Interop.Excel.Worksheet ws = (Microsoft.Office.Interop.Excel.Worksheet)xla.ActiveSheet;
            ws.StandardWidth = 30;
            



            int i = 2;
            int j = 1;

            ws.Cells[1, 1] = "Sipariş Kodu";         
            ws.Cells[1, 2] = "Toplam Brut";
            ws.Cells[1, 3] = "iskonto Miktari";
            ws.Cells[1, 4] = "Net Tutar";
            ws.Cells[1, 5] = "Durum";
            ws.Cells[1, 6] = "Kayıt Tarihi";
            ws.Cells[1, 7] = "Ödeme Tarihi";
            ws.Cells[1, 8] = "Müşteri Bilgileri";
            foreach (ListViewItem item in lstSiparisler.Items)
            {
                ws.Cells[i, j] = item.Text.ToString();
                foreach (ListViewItem.ListViewSubItem subitem in item.SubItems)
                {
                    ws.Cells[i, j] = subitem.Text.ToString();
                    j++;
                }
                j = 1;
                i++;
            }
        }
    }
}
